Image information, be it color or black and white, is commonly generated in a bitmap format at a particular scale, orientation, and resolution K.times.L.times.b , corresponding to a desired printer output, where K is a number of spots per unit of length in one dimension, L is a number of spots per unit length in the other dimension, and b is the depth of each pixel, in number of levels. This bitmap is present for every color separation of the output device, i.e., 4 bitmaps for a 4-color output device, 3 for a 3-color, 2 for a 2-color and 1 for a black and white output device. In a common example of a black and white output, image data comprising a bitmap to be printed is provided to a printer suitable for printing at 300 spots per inch (spi) in both dimensions, at a one bit depth giving 2 levels. Many considerations drive this single selection of resolution, including the desirability of providing only a limited number of fonts (alphanumeric bitmaps) so as to use only a limited amount of storage space. Common software packages available on personal computers or for operation of input scanners for document creation also usually provide only a single resolution output.
Increasingly, the resolution available from printers varies over a wider range of choices. Printer resolutions are available over a range, for example, from less than 200 spi to more than 600 spi. Resolutions vary for a number of reasons, generally related to the quality of the output image and/or the data path architecture potentially distinguishing between text and image; contour data and gradation data; and the like.
It is a common practice to implement conversion of a bitmap of first resolution K.times.L.times.b to a bitmap of second resolution M.times.N.times.d through simple pixel level and raster level operations, such as pixel doubling. When resolution is changed by integer multiples, the resolution conversion can be achieved by pixel replication. Pixel replication, however, does not best use the capabilities of higher resolution output devices and also does not give the best data merging function for a segmented data path that has to combine data of different resolutions or bit depths. For example, high frequency text and graphics data, foreground color data, background color data and low frequency sample color data will typically be included in a single color document. One way to process these various forms of data is to provide each type at a different data channel, and use a binary mask to identify the text outline at high resolution and to use the background and foreground color channels to identify the text color at low resolution. While this solution results in an overall reduction in the amount of data that is required to describe a document, using such a scheme makes it difficult to reproduce anti-aliased or gray-edged text. Hence in performing resolution conversion with a higher resolution output device it is desirable to perform a smoothing operation even if the output device has only a higher resolution than a single of the input image components if the image is described in a segmented way.
Alternatively, more elaborate methods than pixel replication have been developed to facilitate resolution conversion, some of which are described U.S. Pat. No. 5,282,057 to Mailloux and Coward, entitled "Bit-Map Image Resolution Converter," and U.S. Pat. No. 5,410,615 to Mailloux, entitled "Bit-Map Image Resolution Converter Compensating for Write-White Xerographic Laser Printing," the pertinent portions of each patent being incorporated herein by reference. Each of the above-mentioned patents contemplates a method of magnifying, by a predetermined magnification factor (n), original image pixels in two dimensions. The method includes the steps of selecting an original image pixel, as well as determining the binary state of both the selected original image pixel and all immediately surrounding original image pixels. Additionally, the selected original image pixel is expanded into an n.times.n array of magnified image pixels to represent the magnification of the selected original image pixel. Finally, a binary state is assigned to each pixel in the array of magnified image pixels according to the pattern of binary signals previously determined for the selected original image pixel and all immediately surrounding original image pixels. In the preferred embodiments of these patents, the assignment of the binary states to the pixels in the array of magnified image pixels is made according to a set of state determination rules.
Employing sophisticated resolution conversion techniques does not insure that the resulting output image will have a desirable appearance. For instance, the output image can be excessively blocky and/or contain noticeable "jaggies." Hence, smoothing operations are sometimes used in conjunction with the conversion or scaling of the image. Through use of the state determination rules in the techniques of the above-mentioned applications, smoothing operations are achieved. For example, the method of the '057 patent ("Bit-Map Image Resolution Converter") permits such operations as smoothing of edges, smoothing of half-bitting effects and smoothing of lines. Moreover, the method of the '615 patent ("Bit-Map Image Resolution Converter Compensating for Write-White Xerographic Laser Printing") permits enhancing of single bits in printing and compensating for loss of resolution in write-white printing.
The following patents also disclose techniques for achieving a higher degree of smoothing in the output image:
U.S. Pat. No. 4,280,144
Inventor: Bacon
Issued: Jul. 21, 1981
U.S. Pat. No. 4,437,122
Inventors: Walsh et al.
Issued: Mar. 13, 1984
U.S. Pat. No. 4,670,039
Inventors: Neil et al.
Issued: Jul. 7, 1987
U.S. Pat. No. 4,847,641
Inventor: Tung
Issued: Jul. 11, 1989
U.S. Pat. No. 4,280,144 discloses a coarse scan/fine print algorithm. In particular the algorithm is adapted for use in a scheme in which a pixel having two levels of information is transmitted and then reconstructed into a pixel having four levels of information.
U.S. Pat. No. 4,437,122 discloses a technique for enhancing the resolution and quality of characters of a system receiving information initially in the form of image data. Through use of the technique, images can be smoothed by appropriately processing unenhanced input pixels; that is, an array of subpixels can be mapped on to a selected unenhanced pixel and the subpixels of the array can be outputted selectively as black or white to permit smoothing of the resulting output image.
U.S. Pat. No. 4,670,039 discloses a method for smoothing the display of contiguous parallel line segments in a manner to reduce the discontinuities that occur near the ends of the line segments. Smoothing is achieved by adding auxiliary dots of a lesser diameter below the larger main dots forming a first line segment in a given row and adding the same size auxiliary dots above the main dots of an adjacent line segment when the latter are in a row below the given row. The smoothing operation is optimized for multiple cases and line orientations and more than three different dot sizes can be used in the smoothing operation.
U.S. Pat. No. 4,847,641 discloses a technique for enhancing the printing of bit mapped images by piecewise matching of the bitmap with predetermined stored templates or patterns to detect occurrence of preselected bitmap features. Whenever a match occurs, an error signal is generated to produce a corrected or compensated dot or cell to replace a matched bitmap cell. In this manner the printed image of the desired bitmap image is enhanced by substituting in the original bitmap image on a piece-by-piece or cell-by-cell basis, the cells of the preselected feature with error compensated sub-cells.
One system in which image components are represented in different resolutions or bit depths is taught in U.S. Pat. No. 5,225,911 to Buckley and Rumph. U.S. Pat. No. 5,225,911 shows a circuit for enabling the raster display of text or line art in one constant color against a background. The circuit has four channels, one each for constant colors, continuous-tone images, image masks, and instructions. The four channels carry data of potentially different resolution and bit depth that is combined at a final multiplexer.
Advanced print engines in current system configurations might use imagers having different data channels for text, graphics and color as described in the '911 patent. In such an imager, different data channels exist for high frequency text and graphics (mask), foreground color, background color, low frequency sample color data, etc. One of the advantages of those systems is the efficient use of image data for describing color documents. For example, yellowish text on a bluish background does not need to be described using 24 bits for every pixel at the resolution needed to correctly represent the text. Instead a binary mask can be used determining the text outline at high resolution and the background, and foreground color channels can be used to determine the text color at low resolution resulting in an overall reduction in data needed to describe the page.
None of the above references specifically contemplates a technique for resolution conversion or scaling image data in which different image components might be represented at different resolutions or bit depths.
Alternatively, some systems use a multi-stage representation of the image data, where in the first rendering stage the data is represented at one resolution and bit depth and in a second stage is typically described by higher resolution and reduced bit depth. In such system the described invention can be used advantageously to modify the actual mapping between the two representations by altering the halftoning method, incorporating a smoothing step.
Encoding methods, commonly called halftoning, are used to reduce the number of quantization levels per pixel in a digital image while maintaining the gray appearance of the image at normal reading distance. Halftoning techniques are widely employed in the printing and display of digital images. Halftoning techniques are necessary because the physical processes involved are binary in nature or the processes have been restricted to binary operation for reason of cost, speed-memory, or stability in the presence of process fluctuations. Examples of such processes are: most printing presses; ink jet printers; binary cathode ray tube displays; and laser xerography.
A standard method of quantizing gray level pixel values to binary level pixel values is through dithering or screening processes. In such arrangements, over a given area having a number of gray pixels therein, each pixel value of an array of gray level pixels within the area is compared to one of a set of pre-selected thresholds as taught, for example, in U.S. Pat. No. 4,149,194 to Holladay. The effect of such an arrangement is that, for an area where the image is gray, some of the thresholds within the screen matrix will be exceeded, i.e., the image value at that specific location is larger than the values stored in the dither matrix for that same location where the intensity is less than the threshold the pixel is colored black, while the remaining elements are allowed to remain white, dependent on the actual physical quantity described by the data. The effect of the distribution of black and white over the halftone cell is integrated by the human eye as gray.
A trade-off is required between the number of gray level increments representable by a screen cell, versus the size or frequency of the cell. While it is desirable to have as many gray levels as possible representable by a screen cell, such a requirement increases the size of the cell until its repetition across an image becomes visible. However, with a smaller cell, which can be repeated at high frequency across a page, only a relatively small number of gray levels can be represented. Consequently, it is desirable to use different halftone cells for different image components, as described in a technique by David Rumph et al. described in a patent application, Ser. No. 08/245,230, filed May 18, 1996.
A feature of this invention provides a method of improving image quality that smoothes the image data when going from one resolution (bit depth combination) to another resolution (bit depth combination) by separating the detection of the jaggedness from the processing required for smoothing.
None of the above cited references offer an efficient way to perform a RET or smoothing operation on data that has a multi-bit pixel depth. It is therefor a convenient feature of the present invention to provide a method that efficiently performs an RET or smoothing operation on multi-bit pixel depth data, using a separation for detecting the jaggedness of the data and performing the actual smoothing operation.
All of the references cited herein are incorporated by reference for their teachings.